PC A PICAXE 08M2
PCF8574
Vágner Vlastimil
Přípravek umožňuje ovládat (modul) osazený integrovaným obvodem PCF8574 mikroprocesorem
PICAXE 08M2, zadávání dat pro PCF8574 je po sběrnici I2C z mikroprocesoru
PICAXE 08M2 který data přijímá z počítače PC. Přípravek se k počítači
PC připojuje na sériový port COM nebo pomocí redukce USB/COM, může posloužit
pro inspiraci při vlastních pokusech. Další jednoduchá zapojení s PICAXE
jsou v [1]
POPIS PŘÍPRAVKU A
MODULU S PCF8574
Přípravek
zapojený dle schéma na Obr.č.01 je společně s modulem PCF8574 napájen napětím
5V DC toto napětí je stabilizováno IO 7805, (schéma zapojení stabilizace s IO
7805 je dle továrního zapojení vstup a výstup IO 7805 je proti rozkmitání
blokován keramickými kondenzátory 100nF).
Modul PICAXE je osazený JUMPEREM JP1 kterým se propojuje programovací vstup
mikroprocesoru označený „PIN2“. Při programování mikroprocesoru se propojí
vstupy na JP1 č.1 a 2 což umožní nahrání programu do mikroprocesoru z PC, po
naprogramování se přepojí propojka na JP1 na pozice 2 a 3, PIN2 je pak trvale
připojený přes rezistory 22K a 10K na záporný napájecí pól(-). Propojením PINŮ na
JUMPERU JP1 na pozici 2 a 3 jsou do mikroprocesoru na pinu označeném „PIN3“
nahrávány data do mikroprocesoru pro ovládání PCF8574, vstup „PIN3“ je na
JUMPER JP1 připojen přes odporový dělič z rezistoru 22K a rezistoru 10K. Modul
PCF8574 je osazen na DPS konektory které umožňují zapojit na sběrnici I2C více
modulů maximálně však osm v mém případě je použit pouze jeden modul, na
DPS je osazen tří segmentový DIL spínač pro volbu adres. Základní adresa
modulu osazeného PCF8574 pokud jsou všechny tři DIL spínače
spojeny se záporným napájecím napětím (-) je 32 viz obrázek č.06 tato adresa společně s bitem R/W pak jako celek má hodnotu
64 TATO HODNOTA SE ZADÁVÁ PAK V PROGRAMU „POZOR INTEGROVANÝ OBVOD
PCF8574A MÁ JINOU ADRESU BLIŽŠÍ POPIS JE V DATASHEETU K UVEDENÝM
INTEGROVANÝM OBVODŮM“ vstupní linky SCL a SDA jsou již osazeny
při výrobě modulu zdvihacími rezistory 4K7 tak že není třeba osazovat další
rezistory tyto osadíme pouze tehdy pokud si budeme sami vyrábět DPS osazenou
PCF8574 nebo PCF8574A . Po připojení napájecího napětí k PCF8574 jsou všechny
vstupně/výstupní linky P0 – P7 nastaveny na vysokou hodnotu „H“ a je na nich
plné kladné napětí,v tomto případě je možné tyto vstupy P0 - P7 stáhnout
na zápornou hodnotu napětí a linky načítat pokud chceme vstupní linky načítat
je nutné zadat adresu 65 bit R/W má hodnotu „1“.
Pro posílení výstupních linek je možné použít integrovaný obvod ULN2803 kterým
můžeme načítat vstupy PCF8574 nebo ovládat například relátka, motorky a podobně
schéma zapojení s ULN2803 je na obrázcích č.04 a č.05. Na o obrázku č.02
je nákres PCF8574 na obrázku č.03 je schéma zapojení posílení výstupních
linek P0 – P7 pomocí tranzistorů s vodivostí NPN po připojení napájecího napětí k PCF8574
jsou všechny tranzistory ve vodivém stavu a jejich vypnutí a následné ovládaní
je prováděno programově, jako první je do PCF8574 vyslána hodnota „0“ tím se
všechny linky P0 – P7 nastaví na hodnotu „L“ a poté pak již hodnota která má
ovládat příslušný výstup například hodnota „1“ sepne výstupní linku P0, hodnota
„6“ sepne výstup P1 a P2 ostatní linky P0, P3, P4, P5, P6 a P7 zůstanou vypnuté.
Po úpravě zapojení a použití tranzistorů s opačnou vodivostí PNP
jsou po připojení napájecího napětí k PCF8574 všechny tranzistory
v nevodivém stavu a zapnutí požadovaného výstupu P0 – P7 je provedeno programově,
po zadání hodnoty „0“ se všechny tranzistory uvedou do vodivého stavu. Pokud
potřebujeme aby se sepnul tranzistor ovládaný výstupem „P0“ zadáme hodnotu 254,
v programu pro ovládání zařízení je pak provedeno přepínání výstupních
linek P0 – P7 například výpočtem tak že od hodnoty 255 odečteme hodnotu
požadovaného sepnutého výstupu P0 – P7 a výsledek pak zadáme do PCF8574.
Například chceme sepnout linku P3 + P5 hodnota linky P3 je 8, hodnota linky P5
je 32 součet je 40, od hodnoty 255 odečteme hodnotu 40 (255 – 40 = 215 ) tuto hodnotu zadáme do PCF8574, možnosti
napsaného programu jsou čistě individuální a záleží na aplikaci kterou bude
program ovládat. Pro odzkoušení samotného modulu (BEZ POUŽITÍ DOPLŇKŮ PRO
POSÍLENÍ VÝSTUPŮ) je použit program na využití PCF8574 pro načítání vstupů a program
pro využití PCF8574 na ovládání výstupů P0 – P7. Program pro PC kde se na
monitoru PC zobrazují informace co se zadává a v případě načítání hodnot
na vstupech P0 – P7 načtené hodnoty, program je možné využít i s jiným mikroprocesorem
pro který je napsán program tak aby umožňoval zadávání dat do mikroprocesoru z PC
a načítání dat z mikroprocesoru do PC a zobrazování na monitoru PC komunikace
mezi mikroprocesorem a počítačem probíhá po RS 232.
PROGRAMY K PICAXE
A POČÍTAČI
Program k PC má název PICAXE I2C.EXE je uložen v adresáři PROGRAMY
S PODADRESÁŘEM „POČÍTAČ“, programy pro mikroprocesor mají názvy čtení_1.bas,
čtení_vstupů.bas, zápis_vstupů.bas programy jsou v podadresáři „PICAXE“.
POPIS PROGRAMU A TLAČÍTEK PICAXE I2C : Po spuštění programu jako první zvolíme sériový port, po volbě portu zvolíme komunikační rychlost TUTO MUSÍME ZVOLIT SHODNOU S RYCHLOSTÍ ZADANOU V MIKROPROCESORU ZDE VOLÍME RYCHLOST 4800Bd, POKUD BY SE ZADALA JINÁ RYCHLOST PROGRAM BY ODESÍLAL DO PICAXE HODNOTY KTERÉ BY ALE PICAXE ŠPATNĚ VYHODNOCOVAL!!!.
TLAČÍTKO OTEVŘÍT COM : Kliknutím myši na tlačítko otevřeme COM pro komunikaci s PICAXE po zadání hodnot „volby portu, komunikační rychlosti.
TLAČÍTKO SMAZAT ZÁPIS : Kliknutím myši na tlačítko smažeme data v okně „ZÁPIS DO PICAXE“
TLAČÍTKO SMAZAT ČTENÍ : Kliknutím myši na tlačítko smažeme data v okně „ČTENÍ Z PICAXE“
TLAČÍTKO SMAZAT VŠE : Kliknutím myši na tlačítko smažeme data v oknech „ZÁPIS DO PICAXE A ČTENÍ Z PICAXE“.
TLAČÍTKO UKONČIT PROGRAM : Kliknutím myši na tlačítko ukončíme program stejně tak jako když klikneme tlačítkem myši na „X“ v horní liště před ukončením je uzavřen COM PORT a tím je umožněno tento používat jinými aplikacemi.
PROGRAM VYUŽÍVÁ KNIHOVNU RS232.DLL KTERÁ MUSÍ BÝT UMÍSTĚNA SPOLEČNĚ
S PROGRAMEM VE STEJNÉM ADRESÁŘI.
OVLÁDÁNÍ MODULU A PICAXE
PROGRAMEM
Po propojení přípravku PICAXE kde je nahrán program „zápis_vstupů.bas“ s modulem osazeným PCF8574 a počítačem spustíme na počítači program a po zadání COM PORTU, komunikační rychlosti klikneme myší na tlačítko „OTEVŘÍT COM“ poté myší klikneme do levého horního okna „ZÁPIS DO PICAXE“ kde poté začne mrkat kursor. Nyní zapneme napájení PICAXE společně s modulem a v okně „ČTENÍ Z PICAXE“ se zobrazí „zadej adresu I2C“ do okna „ZÁPIS DO PICAXE“ zadáme hodnotu 64 a stiskneme klávesu „ENTER“, nyní se v okně „ČTENÍ Z PICAXE“ zobrazí „zadej hodnotu 0 - 255“ do okna „ZÁPIS DO PICAXE“ zadáme hodnotu „0“ a stiskneme klávesu „ENTER“. Pokud nyní vezmeme DMM a proti zápornému napájecímu napětí měříme vstupy P0 až P7 nesmíme naměřit žádné kladné napětí („pokud napětí naměříme zadáme znovu hodnotu „0“ pokud i nyní po druhém zadání hodnoty „0“ do PCF8574 naměříme na některém výstupu P0 – P7 kladné napájecí napětí je možné že uvedeny IO není v pořádku). V okně „ČTENÍ Z PICAXE“ je opět zobrazeno „zadej hodnotu 0 - 255“. Do okna „ZÁPIS DO PICAXE“ zadáme libovolnou hodnotu (možnost zadání hodnoty je 0 až 255) a stiskneme klávesu „ENTER“, nyní opět můžeme pomocí DMM měřit napětí na výstupech P0 až P7 a pokud se zadaná hodnota shoduje s výstupem P0 až P7 tak na tomto výstupu naměříme kladné napětí proti zápornému napájecímu napětí. Pokud chceme zadávat nová data a v oknech „ZÁPIS DO PICAXE a ČTENÍ Z PICAXE“ je již hodně dat je vhodné kliknout myší na tlačítko „SMAZAT VŠE“ poté kliknout myší do levého horního rohu v okně „ZÁPIS DO PICAXE“ a zadat hodnotu 0 – 255 a stisknout klávesu „ENTER“. Nyní se v okně „ČTENÍ Z PICAXE“ bude opět zobrazovat „zadej hodnotu 0 – 255“. Pokud je v PICAXE nahrán program „čtení _vstupů.bas“ je postup spuštění programu na PC shodný s předešlým popisem : v okně „ČTENÍ Z PICAXE“ se zobrazí na monitoru PC „zadej adresu I2C“ zadáme adresu „64“ a stiskneme klávesu ENTER, nyní se v okně „ČTENÍ Z PICAXE“ zobrazí „zadej hodnotu 255“ zadáme hodnotu a stiskneme klávesu ENTER. Nyní se v okně „ČTENÍ Z PICAXE“ pravidelně zobrazuje hodnota načtená ze vstupů PCF8574, pokud nyní některý vstup P0- P7 spojíme se záporným napájecím napětím zobrazí se v okně „ČTENÍ Z PICAXE“ hodnota vstupu. Program ukončíme kliknutím myši na tlačítko „UKONČIT PROGRAM nebo na „X“. Hodnoty I/O linek P0 – P7 PCF8574 jsou P0 = 1, P1 = 2, P2 = 4, P3 = 8, P4 = 16, P5 = 32, P6 = 64, P7 = 128 součet všech I/O linek je 255.
Volba komunikační rychlosti zde 4800
Otevření COM PORTU
Kliknutí levým tlačítkem myši v okně „zápis do PICAXE“
Zadání adresy PCF8574 do programu v PICAXE
Zadání hodnoty do PCF8574
Načtení hodnoty linek P0 – P7 vstupy nejsou připojeny na (-) pól zdroje
Načtená hodnota spojené linky P0 s (-) pólem zdroje
Použitý modul s PCF8574
Testování modulu s PCF8574 určený pro LCD displeje
Modul PICAXE 08M2 osazený na univerzální destičce
případné dotazy zodpovím na :
Použité prameny :
Datasheet k modulu A4988
Popis mikroprocesoru PICAXE 08M2 ročník PE2012, PE2013
Burkhart Kainka Elektronika s podporou PC Visual Basic v praxi
[1] www.mojeelektronika.mzf.cz články PC A PICAXE O8M2